package com.jinzhi.jzweb.domain;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;


/**
 * 
 * <pre>
 * 消息表
 * </pre>
 * <small> 2024-05-13 10:25:49 | Long</small>
 */
@Data
@SuppressWarnings("serial")
@TableName("jaz_message")
//这是的这里继承的基础服务类，有几个基本字段
public class JazMessageDO implements Serializable {

    @TableId
	private Long id;

    /** 消息类型(1.系统消息，2订单消息)*/
    @ApiModelProperty(value = "消息类型(1.系统消息，2订单消息)")
    @TableField("message_type")
    private Integer messageType;

    /** 消息发送者id*/
    @ApiModelProperty(value = "消息发送者id")
    @TableField("sender_id")
    private Long senderId;

    /** 消息接收者id */
    @ApiModelProperty(value = "消息接收者id")
    @TableField("receiver_id")
    private Long receiverId;

    /** 消息内容 */
    @ApiModelProperty(value = "消息内容")
    @TableField("message_content")
    private String messageContent;

    /** 创建时间 */
    @ApiModelProperty(value = "创建时间")
    @TableField("create_time")
    private Date createTime;

    /** 是否阅读（0否、1是） */
    @ApiModelProperty(value = "是否阅读（0否、1是）")
    @TableField("is_read")
    private Integer isRead;

    /** 需求id */
    @ApiModelProperty(value = "需求id)")
    @TableField("demand_id")
    private Long demandId;

    /** 邀约id */
    @ApiModelProperty(value = "邀约id")
    @TableField("interview_id")
    private Long interviewId;

    /** 月嫂id */
    @ApiModelProperty(value = "月嫂id")
    @TableField("aunt_id")
    private Long auntId;

    /**
     * 存需求信息(订单类型的消息需要)
     */
    @ApiModelProperty(value = "存需求信息(订单类型的消息需要)")
    @TableField(exist = false)
    private JazUserDemandDO jazUserDemandDO;

    /**
     * 面试邀约信息
     */
    @ApiModelProperty(value = "面试邀约信息")
    @TableField(exist = false)
    private JazInterviewDO jazInterviewDO;


    /** 消息类型，用户端小程序专用！区分去查需求表或邀约表 */
    @ApiModelProperty(value = "消息类型，用户端小程序专用！区分去查需求表或邀约表 0查需求表，1查邀约表")
    @TableField(exist = false)
    private Integer messageTypeUser;

    /** 消息常量，用于前端做跳转使用 */
    @ApiModelProperty(value = "消息常量，用于前端做跳转使用")
    @TableField("message_num")
    private Integer messageNum;


    /** 是否需要发送短信 （true发送，false不发送） */
    @ApiModelProperty(value = "是否需要发送短信 （true发送，false不发送）")
    @TableField(exist = false)
    private boolean hasSendSms;

    /** 服务订单id */
    @ApiModelProperty(value = "服务订单id")
    @TableField("user_order_id")
    private Long userOrderId;

    /** 团购订单id */
    @ApiModelProperty(value = "团购订单id")
    @TableField("group_order_id")
    private Long groupOrderId;

}
